<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <!-- https://es6.ruanyifeng.com/ -->
    一.迭代方法:
    迭代:重复反馈过程的活动,目的都是为了逼近所需要的目标或者结果
    每一个对过程重复-迭代
    而每一次迭代结果都会作为下一次迭代的初始值

    1.forEach()方法和for循环一个作用,都是用来数组遍历
    参数:函数作参数,默认每一个数组项都会执行一次函数,而且做参数的函数拥有3个参数
    第一个参数:数组项的值
    第二个参数:数组项的索引
    第三个参数:数组本身
    注意:forEach没有返回值,无法中断遍历

    <script>
        // var arr=[1,2,3,4,5,6,7,8,9];
        // for(var i=0;i<arr.length;i++){
        //     console.log(arr[i]);
        //     break;
        // }
        // var arr=[1,2,3,4,5,6,7,8,9];
        // var res=arr.forEach(function(value,index,array){
        //     console.log(value);//1-9
        //     // break;//语法错误
        //     //return//没有返回值
        //     // console.log(index);
        //     //console.log(array);//9次数组本身
        // })
        // console.log(res);//undefined
    </script>
    
    <!-- 数组去重3 -->
    <script>
         var  _array=[11,11,11,11,11,3,4,4,5,5,6,6,7];
         var newarr=[];
        //  for(var i=0;i<_array.length;i++){
        //     if(newarr.indexOf(_array[i]===-1)){
        //         newarr.push(_array[i])
        //     } 
        // }

        // _array.forEach(function(value){
        //     // console.log(value);
        //     if(newarr.indexOf(value)===-1){
        //         newarr.push(value)
        //     }
        // })
        // console.log(newarr);

    </script>

    2.map方法.映射方法(一一对应的关系)
    可以对数组中的每一项进行操作,返回一个新的数组
    参数:函数作参数,默认每一个数组项都会执行一次函数,而且做参数的函数拥有3个参数
    第一个参数:数组项的值
    第二个参数:数组项的索引
    第三个参数:数组本身
    注意:可以用return
    <script>
        var arr=[1,2,3,4];
        var res=arr.map(function(value,index,array){
            // console.log(value);
            return value*2
        })
        console.log(res);//[2,4,6,8]
    </script>

</body>
</html>